package Game;

import java.awt.Rectangle;

import TDALista.Position;

/**
* Clase Transitable que extiende de piso 
*/



public class Transitable extends Piso {
	
	protected Coleccionable coleccionable;
	protected char c;
	protected Position<Transitable> posicion;

	
	/**
	 * Constructor de la clase Transitable
	 */
	public Transitable (char c1){
		super();
		c=c1;	
		coleccionable=null;
	}
	
	
	/**
	 * Constructor de la clase Transitable
	 */
	
	public Transitable (){
		super();
		coleccionable=null;
	}
	
	/**
	 * Obtiene el caracter.
	 * @return c carcater
	 */
	public char getChar()
	{return c;}
	
	/**
	 * Setea la posicion recibida por parametro.
	 * @param pos posicion a setear
	 */
	public void setPosition(Position<Transitable> pos){
		posicion=pos;
	}
	
	/**
	 * Obtiene la posicion del transitable
	 * @return posicion del transitable
	 */
	public Position<Transitable> getPosition(){
		return posicion;
	}
	
	/**
	 * Pinta el piso transitable
	 * @param color a pintar
	 */
	public void Pintar(boolean color) {
	
	}
	
	/**
	 * Setea el coleccionable recibido por parametro
	 * @param c coleccionable a setear
	 */
	public void setColeccionable (Coleccionable c){
		coleccionable=c;
		if (c==null){
			//this.getRG().setArena();
			this.getRG().setVisible(true);
		}else {
			this.getRG().setVisible(false);
			coleccionable.getRG().setPos(posX, posY);
			coleccionable.setUbicacion((Transitable)this);
			coleccionable.getRG().setVisible(true);
			
			
		}
	}
	
	/**
	 * Pregunta si hay un objeto por encima del piso
	 * @return coleccionable si no es null
	 */
	public boolean hayObjeto() {
		return coleccionable!=null;
	
	}
	
	/**
	 * Obtiene el coleccionable
	 * @return coleccionable
	 */
	public Coleccionable getColeccionable (){
		return coleccionable;
	}


	/**
	 * Retorna el rectangulo con el que se busca una colision
	 * @return Rectangle 
	 */
	public Rectangle getBounds() {
		return new Rectangle(posX,posY, 50, 50);
	}

	
}
